gtk_render_content_path is expecting the full box dimensions,
not just the content area. So, add the border before calling it.
Note it is still possible to have some separation between the
color and the border, by setting padding.
{
cairo_pattern_t *pattern;
cairo_matrix_t matrix;
-
- gtk_render_content_path (context, cr, x, y, width, height);
+ GtkBorder border;
+
+ gtk_style_context_get_border (context, gtk_style_context_get_state (context), &border);
+ gtk_render_content_path (context, cr,
+ x - border.left,
+ y - border.top,
+ width + border.left + border.right,
+ height + border.top + border.bottom);
if (swatch->priv->use_alpha)
{